package cn.com.gdut.ppj.hr.service;

import java.util.List;
import java.util.Map;

import cn.com.gdut.ppj.model.TbCandidateRecruitmentInfo;
import cn.com.gdut.ppj.model.TbCompany;
import cn.com.gdut.ppj.model.TbHr;
import cn.com.gdut.ppj.model.TbRecruitmentInformation;
import cn.com.gdut.ppj.model.TbResume;
import cn.com.gdut.ppj.model.TbUser;
import cn.com.gdut.ppj.vo.HrResumeViewVO;

public interface IHrService {

	List<TbCandidateRecruitmentInfo> selectCandidateRecruitmentInfo(TbCandidateRecruitmentInfo tcri) throws Exception;
	TbCandidateRecruitmentInfo updateCandidateRecruitmentInfo(TbCandidateRecruitmentInfo tcri) throws Exception;
	
	List<TbResume> selectResume(TbResume resume) throws Exception;
	
	TbCompany addCompany(TbCompany company) throws Exception;
	TbCompany updateCompany(TbCompany company) throws Exception;
	TbCompany selectCompanyById(TbCompany company) throws Exception;
	TbCompany selectCompanyByHrId(TbCompany company) throws Exception;
	
	TbHr addHr(TbHr hr) throws Exception;
	TbHr updateHr(TbHr hr) throws Exception;
	TbHr selectHrByUserId(TbHr hr) throws Exception;
//	List<TbHr> selectHr(TbHr hr);
	
	Integer addHrAndComapny(TbHr hr,TbCompany company) throws Exception;
	
	
	TbRecruitmentInformation addRecruitmentInformation(TbRecruitmentInformation tri, TbUser user) throws Exception;
	TbRecruitmentInformation updateRecruitmentInformation(TbRecruitmentInformation tri) throws Exception;
	TbRecruitmentInformation deleteRecruitmentInformation(TbRecruitmentInformation tri) throws Exception;
	List<TbRecruitmentInformation> selectRecruitmentInformation(TbRecruitmentInformation tri) throws Exception;
	
	List<TbRecruitmentInformation> selectRecruitmentInformationPage(Map<String, String> hash, Integer num) throws Exception;
	Integer countRecruitmentInformation(Map<String, String> hash) throws Exception;
	
	List<HrResumeViewVO> hrResumeView(TbCandidateRecruitmentInfo cri) throws Exception;
}
